﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WCS.Infrastructure.Dto.Response.Coupon
{
    /// <summary>
    /// 优惠券实例查询响应对象
    /// </summary>
    public class CouponInstanceQueryResponseDto
    {

        /// <summary>
        /// 优惠券实例ID
        /// </summary>
        public string? Id { get; set; }

        /// <summary>
        /// 优惠券实例编号
        /// </summary>
        public string? InstanceCode { get; set; }

        /// <summary>
        /// 关联模板ID
        /// </summary>
        public string? TemplateId { get; set; }

        /// <summary>
        /// 领取用户ID
        /// </summary>
        public string? UserId { get; set; }

        /// <summary>
        /// 可使用开始时间
        /// </summary>
        public DateTime AvailableStartTime { get; set; }

        /// <summary>
        /// 可使用结束时间
        /// </summary>
        public DateTime AvailableEndTime { get; set; }

        /// <summary>
        /// 扩展属性
        /// </summary>
        public string? ExtraProperties { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreationTime { get; set; }

        /// <summary>
        /// 状态：0=未激活，1=未使用，2=已使用，3=已过期，4=已冻结
        /// </summary>
        public int Status { get; set; }

        /// <summary>
        /// 推荐商户ID
        /// </summary>
        public string? RecommendMerchantId { get; set; }

        /// <summary>
        /// 所属商户ID
        /// </summary>
        public string? MerchantId { get; set; }

        /// <summary>
        /// 所属门店ID
        /// </summary>
        public string? StoreId { get; set; }

        /// <summary>
        /// 所属收款码ID
        /// </summary>
        public string? CodeId { get; set; }

        /// <summary>
        /// 海报地址
        /// </summary>
        public string? PosterUrl { get; set; }

        /// <summary>
        /// 门店名称
        /// </summary>
        public string? StoreName { get; set; }

        /// <summary>
        /// 商户名称
        /// </summary>
        public string? MerchantName { get; set; }

        /// <summary>
        /// 优惠券模板名称
        /// </summary>
        public string? TemplateName { get; set; }

        /// <summary>
        /// 优惠券类型：1=减免券，2=折扣券
        /// </summary>
        public int? CouponType { get; set; }

        /// <summary>
        /// 方案类型：1=消费者承担服务费，2=商家承担服务费
        /// </summary>
        public int? SchemeType { get; set; }

        /// <summary>
        /// 优惠金额
        /// </summary>
        public long? DiscountAmount { get; set; }

        /// <summary>
        /// 优惠折扣
        /// </summary>
        public decimal? Discount { get; set; }

        /// <summary>
        /// 使用门槛金额
        /// </summary>
        public long? UseThresholdAmount { get; set; }

        /// <summary>
        /// 平台服务费率
        /// </summary>
        public decimal? PlatformServiceFeeRate { get; set; }
    }
}
